home *** CD-ROM | disk | FTP | other *** search
/ The PC-SIG Library 9 / The PC-SIG Library on CD ROM - Ninth Edition.iso / 001_100 / DISK0052 / DISK0052.ZIP / DSKPGM2.BAS < prev    next >
BASIC Source File  |  1980-01-01  |  2KB  |  65 lines

  1. 10 ' *DISKPGM2.BAS     PROGRAM TO SORT ALL FILES ON A DISK AND CREATE A FILE
  2. 20 ' CALLED COPYHHMM.BAT FOR EXECUTION AND COPY IN ALPHABETICAL SEQUENCE
  3. 30 CLS
  4. 40 PRINT "(C) Copyright 1982,, Richard Schinnell,Rockville, MD. 20853 (301) 949-8848
  5. 50 PRINT:LOCATE 10,1,1
  6. 60 COLOR 7,0:PRINT" WHICH DISK DRIVE DO YOU WANT TO CHECK> A OR B :":COLOR 7,0
  7. 70 RICH$=INKEY$:IF LEN(RICH$)<>1 THEN 70
  8. 80 IF LEFT$(RICH$,1)="A" OR LEFT$(RICH$,1) ="B" THEN DRIV$=LEFT$(RICH$,1)+":" ELSE 60
  9. 90 ON ERROR GOTO 630
  10. 100 KEY OFF
  11. 110 FALSE=0:TRUE=NOT FALSE:DEFINT A-Z:L=0:CLS:CODE=43:DIM F$(75)
  12. 120 DIM F1$(75)
  13. 130 X=0:O=1
  14. 140 FILES DRIV$+"*.*"
  15. 150 CLINE1 = CSRLIN
  16. 160 D=0
  17. 170 LOCATE 1,1,1
  18. 180 FOR I = 1 TO CLINE1
  19. 190 FOR B = 1 TO 66 STEP 13
  20. 200 D=D+1
  21. 210 FOR N = 0 TO 11
  22. 220 T = SCREEN(I,(B+N)):F$(D)=F$(D)+CHR$(T)
  23. 230 NEXT N
  24. 240 IF LEFT$(F$(D),1)=" " THEN D=D-1 :GOTO 270
  25. 250 NEXT B
  26. 260 NEXT I
  27. 270 G$= DRIV$+"COPY"+MID$(TIME$,1,2)+MID$(TIME$,4,2)+".BAT"
  28. 280 LOCATE 15,1:COLOR 26,0:PRINT "ALPHABETIZING THE FILE NAMES ":COLOR 7,0
  29. 290 ' THIS ALPHABETIZES THE ARRAY
  30. 300 FOR X=1 TO D-1:FOR Y=X+1 TO D:IF F$(Y)<F$(X) THEN SWAP F$(X),F$(Y)
  31. 310 NEXT Y:NEXT X
  32. 320 FOR I=1 TO D
  33. 330 FOR E = 1 TO LEN(F$(I))
  34. 340 L$= MID$(F$(I),E,1)
  35. 350 IF ASC(L$)<>32 THEN U$=U$+L$
  36. 360 NEXT E
  37. 370 F$(I)=U$
  38. 380 U$=""
  39. 390 NEXT I
  40. 400 CLS:LOCATE 12,25:COLOR 28,0:PRINT " WRITING FILE  ";G$:COLOR 7,0
  41. 410 OPEN  G$ FOR APPEND AS #1
  42. 420 PRINT #1,"REM  THIS PGM WILL AUTOMATICALLY COPY A TO B SORTED
  43. 430 PRINT #1, "PAUSE
  44. 440 FOR I = 1 TO D
  45. 450 PRINT #1,"COPY ";F$(I);" B:"
  46. 460 NEXT I
  47. 470 CLOSE #1
  48. 480 CLS:X=1:O=1
  49. 490 OPEN G$ FOR INPUT AS #1
  50. 500 FOR I = 1 TO D
  51. 510 IF I > 23 THEN X = I-23:O=30
  52. 520 IF I > 46 THEN X = I-46:O=60
  53. 530 X = X +1
  54. 540 LOCATE X,O,1
  55. 550 LINE INPUT #1,F$(I)
  56. 560 PRINT F$(I);
  57. 570 NEXT I
  58. 580 CLOSE #1
  59. 590 LOCATE 25,1,1:COLOR 28,0:PRINT" HIT ANY KEY TO CLEAR SCREEN AND CONTINUE":COLOR 7,0
  60. 600 RICHA$=INKEY$:IF RICHA$="" THEN 600
  61. 610 CLS
  62. 620 END
  63. 630 PRINT "ERROR ";ERR;" HAS OCCURED IN LINE # ";ERL
  64. 640 END
  65.